• 沒有找到結果。

桿頭最佳化設計之數學模型

第四章 桿頭最佳化設計

4.2 最佳化設計模型

4.2.5 桿頭最佳化設計之數學模型

( )

9 23

g x <200 (g)

( )

10 24

g x <460 (cm ) 3

求目標函數 max .f

( )

X = ω1 1f

( )

X − ω2f2

( )

X + ω3 3f

( )

X

4.3 最佳化設計的數值計算方法

數值計算是一種數值近似計算方法,主要是透過目標函數的變化規律,並且 以適當的步長沿著目標函數值下降的方向,逐步的朝向目標函數值的最佳點進行 搜尋,逐步的逼近目標函數的最佳點。UG/KF 所提供 ug_optimize 的類,對於解 最佳化模型為迭代(Iteration)形式的數值方法。

迭代法簡單的說就是步步逼近,最後達到目標函數的最佳點。數值計算的迭 代方法具有以下幾項特性:

(1) 以數值計算的方法並非數學分析方法。因為桿頭模型相當複雜並 且具有 40 項參數值,比較不適合用數學分析的方法計算。

(2) 具有簡單的邏輯結構並且能夠進行重複相同的計算。

(3) 計算後所得到的值為逼近精確解的近似解。

一般迭代形式包括給定初始值、迭代定義(Iteration definition)以及中止要件 (Termination condition)三個部份,此三部份的關係可由圖 4-5 所示。使用各種數 值計算方法時,初始值的給定相當重要,若初始值越接近最佳點時,收斂的速度 越 快 。 因 此 , 必 須 了 解 數 值 計 算 方 法 的 收 斂 性 質 屬 於 區 域 收 斂 (Local convergence),並非全域性收斂(Global convergence),表示初始值若不在某特定區 間之內,或者無法滿足要求,則該演算法不會收斂。

給定初始設計點

設計點是否滿足計算精度

根據迭代定義,取 得下一個設計點

終止搜尋

圖 4-5 迭代流程

透過迭代法求解最佳化的步驟可歸納成下列幾項:

(1) 進行最佳化求解過程中,必須先選擇初始點X ,接著由此初始點( )0 X( )0 搜 尋接近目標函數的方向以及初始步長,得到X 點。此表示桿頭在進行( )1 最佳化之前必須先對每項參數給定內定值,並且需要在桿頭模型產生後 才可進行最佳化運算。

(2) 取得X( )1 點之後再選擇一個使新的函數值接近目標函數的方向以及步 長,得到X( )2 點,依此類推,一步一步的搜尋與重覆計算,直到目標函 數的最佳點,此過程的迭代形式可由下列所示:

( )k+1 ( )k ( ) ( )k k

X = X +α S (4.23)

其中,使 f

(

X( )k+1

)

< f

( )

X( )k k=0,1, 2

( )k

X :迭代計算過程中第 k 步的點。

( )k

α :第 k 步迭代計算的步長。

( )k

S :第 k 步迭代計算的搜尋方向。

(3) 在迭代過程中,每進一點後必須與原來的點相減,檢查此點與原來點相 差的值是否滿足預定的計算精度ε,若滿足則表示目前函數值已達到精 度要求,否則將繼續進行搜尋。表示式如下所示:

(

X( )k+1

) ( )

X( )k

ff < ε (4.24)

由線性代數得知,對於任何一個迭代公式進行計算,不一定可以得到逼近目 標的近似解,若此迭代公式進行計算後得到逼近目標的近似解,則此迭代公式為 收斂,反之則為發散。

理論上,每個迭代公式都能產生無窮點的設計方案。因此,只能進行有限次 的修改設計,直到取得適當近似解後應當停止。而設計方案不斷的修改直到目標 函數的最大值才停止計算,但是對於工程設計問題往往很難判斷其目標函數的最 大值。因此,必須使用的中止要件。中止與收斂並不相同,事實上在許多狀況下,

中止並不代表數值計算法已經收斂至理論最佳值。當數值計算法滿足中止要件 時,表示此設計點在預設的容許範圍內為滿足設計,或者是到達每次迭代之間的 變化已經非常小,而沒必要再迭代下去。因此,中止要件只能根據計算中的具體 情況進行判斷。此判斷方式由下列四種形式:

(1) 當目標函數在相鄰兩點的相差值小於計算精度時,中止迭代。

(2) 設計變數在相鄰兩點迭代的比值,小於相對收斂公差,則進行收斂。

(3) 在桿頭最佳化設計中會定義出多個約束條件,而每一個約束條件會給定 一個限制方式(大於、小於或限制於一個值區間)。理論上,當最佳化運 算器進行運算時,若違反約束條件,即使得到最佳化的結果,最佳化運 算器仍不考慮將此一最佳化結果及其相應的設計變數。但實務的應用上 有時並非如此嚴謹。因此,有些約束條件,只是希望限制在某一約束條 件內,但即使超出此一約束限制少量,並不致於對整個最佳化系統有太

大的影響。因此,使用者可應用此一參數,設定最佳化過程最大允許約 束差異值,在最佳化過程中,即使違反約束限制量,但在此一設定值內,

若有最佳化結果,則仍視其結果為可接受的最佳化結果。而桿頭的約束 條件由 USGA 所訂定的規範,所以在設計桿頭時不可超過此約束條件,

所以必須將最大約束超過量的值設定為非常小,防止任何參數超過約束 條件。

(4) 迭代次數。在每項數值計算法都會包含此項中止要件,此中止要件的目 的在於最佳化模型有錯誤時,或者數值計算法無法收斂的情況下,使數 值計算法不會無窮盡地迭代。若對最佳化模型進行測試,則可將迭代次 數設定少一些,節省計算資源。若迭代次數超過最大迭代次數而中止,

則表示運算失敗,所得到的結果可能是發散的,甚至不可行的設計點。

相關文件